<html>
<head>
    <title>Instruction List</title>
    <style>
body {
	font-family: arial;
    font-size: 16px;
    margin: 0;
    overflow-x: auto;
    overflow-y: hidden;
}
h1 {
    font-size: 32px;
    margin: 0;
}
p {
    margin: 0;
}
a {
    color: #8080A0;
    text-decoration:none;
}
a:hover {
    text-decoration: underline;
}
a:active {
    color: #404040;
}

.column {
    position: absolute;
    top: 0;
    height: 100%;
    overflow-y: auto;
    padding: 5px;
    box-sizing:border-box;
}
.column.left {
    left: 0;
    width: 18em;
}
.column.right {
    left: 18em;
    width: 35em;
}
.toc-list {
    display: inline-block;
    float: left;
    list-style-type: none;
    margin: 5px 5px 0 5px;
    padding: 0;
}

.toc-list a {
    font-family: monospace;
}

.opcode {
    padding: 5px;
    position: relative;
    margin-bottom: 20px;
}

.flags {
    float: right;
    display: inline-block;
    border: 1px solid black;
    padding: 0;
    border-collapse: collapse;
    position:relative;
    top: 42px;
}

.flags th {
    padding: 0;
    width: 1.3em;
    text-align:center;
    border-bottom: 1px solid black;
}

.flags td {
        padding: 0;
        width: 1.3em;
        text-align:center;
        height: 1.5em;
}
.description {
        float: left;
        display: inline-block;
        margin-bottom: 10px;
        width: 24em;
        height: 75px;
}

.modes {
    border: 1px solid black;
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 10px;
}
.modes th {
    vertical-align: bottom;
    border-bottom: 1px solid black;
}
.modes tr td:nth-child(3) {
    text-align: center;
}
.modes tr td:nth-child(4) {
    text-align: center;
}
.modes tr td:nth-child(5) {
    text-align: center;
}

.column.left {
    background: #F8F8FF;
}
.modes td {
    background: white;
}
.modes th {
    background: #E0E0FF;
}
.flags td {
    background: white;
}
.flags th {
    background: #E0E0FF;
}
.opcode {
    background: #F0F0F0;
}
.modes tr:nth-child(odd) td {
    border-bottom: 1px solid black;
}
</style>
</head>

<body>
    <!-- Table of contents -->
    <div class="column left">
        <ul class="toc-list">
            <li><strong>Alphabetical</strong></li>
            <li><a href="#ADC">ADC</a></li>
            <li><a href="#AND">AND</a></li>
            <li><a href="#ASL">ASL</a></li>
            <li><a href="#BCC">BCC</a></li>
            <li><a href="#BCS">BCS</a></li>
            <li><a href="#BEQ">BEQ</a></li>
            <li><a href="#BIT">BIT</a></li>
            <li><a href="#BMI">BMI</a></li>
            <li><a href="#BNE">BNE</a></li>
            <li><a href="#BPL">BPL</a></li>
            <li><a href="#BRK">BRK</a></li>
            <li><a href="#BVC">BVC</a></li>
            <li><a href="#BVS">BVS</a></li>
            <li><a href="#CLC">CLC</a></li>
            <li><a href="#CLD">CLD</a></li>
            <li><a href="#CLI">CLI</a></li>
            <li><a href="#CLV">CLV</a></li>
            <li><a href="#CMP">CMP</a></li>
            <li><a href="#CPX">CPX</a></li>
            <li><a href="#CPY">CPY</a></li>
            <li><a href="#DEC">DEC</a></li>
            <li><a href="#DEX">DEX</a></li>
            <li><a href="#DEY">DEY</a></li>
            <li><a href="#EOR">EOR</a></li>
            <li><a href="#INC">INC</a></li>
            <li><a href="#INX">INX</a></li>
            <li><a href="#INY">INY</a></li>
            <li><a href="#JMP">JMP</a></li>
            <li><a href="#JSR">JSR</a></li>
            <li><a href="#LDA">LDA</a></li>
            <li><a href="#LDX">LDX</a></li>
            <li><a href="#LDY">LDY</a></li>
            <li><a href="#LSR">LSR</a></li>
            <li><a href="#NOP">NOP</a></li>
            <li><a href="#ORA">ORA</a></li>
            <li><a href="#PHA">PHA</a></li>
            <li><a href="#PHP">PHP</a></li>
            <li><a href="#PLA">PLA</a></li>
            <li><a href="#PLP">PLP</a></li>
            <li><a href="#ROL">ROL</a></li>
            <li><a href="#ROR">ROR</a></li>
            <li><a href="#RTI">RTI</a></li>
            <li><a href="#RTS">RTS</a></li>
            <li><a href="#SBC">SBC</a></li>
            <li><a href="#SEC">SEC</a></li>
            <li><a href="#SED">SED</a></li>
            <li><a href="#SEI">SEI</a></li>
            <li><a href="#STA">STA</a></li>
            <li><a href="#STX">STX</a></li>
            <li><a href="#STY">STY</a></li>
            <li><a href="#TAX">TAX</a></li>
            <li><a href="#TAY">TAY</a></li>
            <li><a href="#TSX">TSX</a></li>
            <li><a href="#TXA">TXA</a></li>
            <li><a href="#TXS">TXS</a></li>
            <li><a href="#TYA">TYA</a></li>
        </ul>
        <ul class="toc-list">
            <li><strong>Categorical</strong></li>
            <li>&nbsp;</li>
            <li>Data Input/Output</li>
            <li><a href="#LDA">LDA</a> <a href="#STA">STA</a></li>
            <li><a href="#LDX">LDX</a> <a href="#STX">STX</a></li>
            <li><a href="#LDY">LDY</a> <a href="#STY">STY</a></li>
            <li><a href="#TAX">TAX</a> <a href="#TXA">TXA</a></li>
            <li><a href="#TAY">TAY</a> <a href="#TYA">TYA</a></li>
            <li>&nbsp;</li>
            <li>Counting Operators</li>
            <li><a href="#INC">INC</a> <a href="#DEC">DEC</a></li>
            <li><a href="#INX">INX</a> <a href="#DEX">DEX</a></li>
            <li><a href="#INY">INY</a> <a href="#DEY">DEY</a></li>
            <li>&nbsp;</li>
            <li>Bit Shiftis</li>
            <li><a href="#ASL">ASL</a> <a href="#LSR">LSR</a></li>
            <li><a href="#ROL">ROL</a> <a href="#ROR">ROR</a></li>
            <li>&nbsp;</li>
            <li>Logical Operators</li>
            <li><a href="#AND">AND</a></li>
            <li><a href="#ORA">ORA</a></li>
            <li><a href="#EOR">EOR</a></li>
            <li>&nbsp;</li>
            <li>Arithmetic Operators</li>
            <li><a href="#ADC">ADC</a></li>
            <li><a href="#SBC">SBC</a></li>
            <li><a href="#CMP">CMP</a></li>
            <li><a href="#CPX">CPX</a></li>
            <li><a href="#CPY">CPY</a></li>
            <li>&nbsp;</li>
            <li>Flag Toggles</li>
            <li><a href="#CLC">CLC</a> <a href="#SEC">SEC</a></li>
            <li><a href="#CLD">CLD</a> <a href="#SED">SED</a></li>
            <li><a href="#CLI">CLI</a> <a href="#SEI">SEI</a></li>
            <li><a href="#CLV">CLV</a></li>
            <li>&nbsp;</li>
            <li>Branching</li>
            <li><a href="#BIT">BIT</a></li>
            <li><a href="#BCC">BCC</a> <a href="#BCS">BCS</a></li>
            <li><a href="#BNE">BNE</a> <a href="#BEQ">BEQ</a></li>
            <li><a href="#BPL">BPL</a> <a href="#BMI">BMI</a></li>
            <li><a href="#BVC">BVC</a> <a href="#BVS">BVS</a></li>
            <li><a href="#JMP">JMP</a></li>
            <li>&nbsp;</li>
            <li>Stack Processing</li>
            <li><a href="#TSX">TSX</a> <a href="#TXS">TXS</a></li>
            <li><a href="#PHA">PHA</a> <a href="#PLA">PLA</a></li>
            <li><a href="#PHP">PHP</a> <a href="#PLP">PLP</a></li>
            <li><a href="#JSR">JSR</a> <a href="#RTS">RTS</a></li>
            <li>&nbsp;</li>
            <li>Interrupt Handling</li>
            <li><a href="#BRK">BRK</a> <a href="#RTI">RTI</a></li>
            <li>&nbsp;</li>
            <li>Misc</li>
            <li><a href="#NOP">NOP</a></li>
        </ul>
    </div>
    <!-- Instruction list -->
    <div class="column right">
        <div id="ADC" class="opcode">
            <div class="description">
                <h1>ADC</h1>
                <p>Add memory to accumulator with carry</p>
                <p>Operation: A + M + C &rarr; A, C</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&check;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Immediate</td>
                    <td>
                        <pre>ADC #oper</pre>
                    </td>
                    <td>69</td>
                    <td>2</td>
                    <td>2</td>
                </tr>
                <tr>
                    <td>Zero Page</td>
                    <td>
                        <pre>ADC oper</pre>
                    </td>
                    <td>65</td>
                    <td>2</td>
                    <td>3</td>
                </tr>
                <tr>
                    <td>Zero Page, X</td>
                    <td>
                        <pre>ADC oper, X</pre>
                    </td>
                    <td>75</td>
                    <td>2</td>
                    <td>4</td>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>ADC oper</pre>
                    </td>
                    <td>6D</td>
                    <td>3</td>
                    <td>4</td>
                </tr>
                <tr>
                    <td>Absolute, X</td>
                    <td>
                        <pre>ADC oper, X</pre>
                    </td>
                    <td>7D</td>
                    <td>3</td>
                    <td>4*</td>
                </tr>
                <tr>
                    <td>Absolute, Y</td>
                    <td>
                        <pre>ADC oper, Y</pre>
                    </td>
                    <td>79</td>
                    <td>3</td>
                    <td>4*</td>
                </tr>
                <tr>
                    <td>(Indirect, X)</td>
                    <td>
                        <pre>ADC (oper, X)</pre>
                    </td>
                    <td>61</td>
                    <td>2</td>
                    <td>6</td>
                </tr>
                <tr>
                    <td>(Indirect), Y</td>
                    <td>
                        <pre>ADC (oper), Y</pre>
                    </td>
                    <td>71</td>
                    <td>2</td>
                    <td>5*</td>
                </tr>
            </table>
            <p>* Add 1 if page boundary is crossed.</p>
        </div>
        <div id="AND" class="opcode">
            <div class="description">
                <h1>AND</h1>
                <p>Logical "AND" memory with accumulator</p>
                <p>Operation: A &and; M &rarr; A</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Immediate</td>
                    <td>
                        <pre>AND #oper</pre>
                    </td>
                    <td>29</td>
                    <td>2</td>
                    <td>2</td>
                </tr>
                <tr>
                    <td>Zero Page</td>
                    <td>
                        <pre>AND oper</pre>
                    </td>
                    <td>25</td>
                    <td>2</td>
                    <td>3</td>
                </tr>
                <tr>
                    <td>Zero Page, X</td>
                    <td>
                        <pre>AND oper, X</pre>
                    </td>
                    <td>35</td>
                    <td>2</td>
                    <td>4</td>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>AND oper</pre>
                    </td>
                    <td>2D</td>
                    <td>3</td>
                    <td>4</td>
                </tr>
                <tr>
                    <td>Absolute, X</td>
                    <td>
                        <pre>AND oper, X</pre>
                    </td>
                    <td>3D</td>
                    <td>3</td>
                    <td>4*</td>
                </tr>
                <tr>
                    <td>Absolute, Y</td>
                    <td>
                        <pre>AND oper, Y</pre>
                    </td>
                    <td>39</td>
                    <td>3</td>
                    <td>4*</td>
                </tr>
                <tr>
                    <td>(Indirect, X)</td>
                    <td>
                        <pre>AND (oper, X)</pre>
                    </td>
                    <td>21</td>
                    <td>2</td>
                    <td>6</td>
                </tr>
                <tr>
                    <td>(Indirect), Y</td>
                    <td>
                        <pre>AND (oper), Y</pre>
                    </td>
                    <td>31</td>
                    <td>2</td>
                    <td>5*</td>
                </tr>
            </table>
            <p>* Add 1 if page boundary is crossed.</p>

        </div>
        <div id="ASL" class="opcode">
            <div class="description">
                <h1>ASL</h1>
                <p>Arithmetic Shift Left One Bit (Memory or Accumulator)</p>
                <p>Operation: C &larr; 76543210 &larr; &empty;</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Accumulator</td>
                    <td>
                        <pre>ASL A</pre>
                    </td>
                    <td>0A</td>
                    <td>1</td>
                    <td>2</td>
                </tr>
                <tr>
                    <td>Zero Page</td>
                    <td>
                        <pre>ASL oper</pre>
                    </td>
                    <td>06</td>
                    <td>2</td>
                    <td>5</td>
                </tr>
                <tr>
                    <td>Zero Page, X</td>
                    <td>
                        <pre>ASL oper, X</pre>
                    </td>
                    <td>16</td>
                    <td>2</td>
                    <td>6</td>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>ASL oper</pre>
                    </td>
                    <td>0E</td>
                    <td>3</td>
                    <td>6</td>
                </tr>
                <tr>
                    <td>Absolute, X</td>
                    <td>
                        <pre>ASL oper, X</pre>
                    </td>
                    <td>1E</td>
                    <td>3</td>
                    <td>7</td>
                </tr>
            </table>
        </div>
        <div id="BCC" class="opcode">
            <div class="description">
                <h1>BCC</h1>
                <p>Branch on Carry Clear</p>
                <p>Operation: Branch on C &equals; &empty;</p>

            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Relative</td>
                    <td>
                        <pre>BCC oper</pre>
                    </td>
                    <td>90</td>
                    <td>2</td>
                    <td>2*</td>
                </tr>
            </table>
            <p>* Add 1 if branch occurs to same page. Add 2 if branch occurs to different page.</p>

        </div>
        <div id="BCS" class="opcode">
            <div class="description">
                <h1>BCS</h1>
                <p>Branch on Carry Set</p>
                <p>Operation: Branch on C &equals; 1</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Relative</td>
                    <td>
                        <pre>BCS oper</pre>
                    </td>
                    <td>B0</td>
                    <td>2</td>
                    <td>2*</td>
                </tr>
            </table>
            <p>* Add 1 if branch occurs to same page. Add 2 if branch occurs to different page.</p>
        </div>
        <div id="BEQ" class="opcode">
            <div class="description">
                <h1>BEQ</h1>
                <p>Branch on result zero</p>
                <p>Operation: Branch on Z &equals; 1</p>

            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Relative</td>
                    <td>
                        <pre>BEQ oper</pre>
                    </td>
                    <td>F0</td>
                    <td>2</td>
                    <td>2*</td>
                </tr>
            </table>
            <p>* Add 1 if branch occurs to same page. Add 2 if branch occurs to different page.</p>

        </div>
        <div id="BIT" class="opcode">
            <div class="description">
                <h1>BIT</h1>
                <p>Test bits in memory with accumulator</p>
                <p>Operation: A &and; M, M<sub>7</sub> &rarr; N, M<sub>6</sub> &rarr; V</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>M<sub>7</sub></td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>M<sub>6</sub></td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Zero Page</td>
                    <td>
                        <pre>BIT oper</pre>
                    </td>
                    <td>24</td>
                    <td>2</td>
                    <td>3</td>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>BIT oper</pre>
                    </td>
                    <td>2C</td>
                    <td>3</td>
                    <td>4</td>
                </tr>
            </table>
        </div>
        <div id="BMI" class="opcode">
            <div class="description">
                <h1>BMI</h1>
                <p>Branch on result minus</p>
                <p>Operation: Branch on N &equals; 1</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Relative</td>
                    <td>
                        <pre>BMI oper</pre>
                    </td>
                    <td>30</td>
                    <td>2</td>
                    <td>2*</td>
                </tr>
            </table>
            <p>* Add 1 if branch occurs to same page. Add 2 if branch occurs to different page.</p>
        </div>
        <div id="BNE" class="opcode">
            <div class="description">
                <h1>BNE</h1>
                <p>Branch on result not zero</p>
                <p>Operation: Branch on Z &equals; &empty;</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Relative</td>
                    <td>
                        <pre>BNE oper</pre>
                    </td>
                    <td>D0</td>
                    <td>2</td>
                    <td>2*</td>
                </tr>
            </table>
            <p>* Add 1 if branch occurs to same page. Add 2 if branch occurs to different page.</p>
        </div>
        <div id="BPL" class="opcode">
            <div class="description">
                <h1>BPL</h1>
                <p>Branch on result plus</p>
                <p>Operation: Branch on N &equals; &empty;</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Relative</td>
                    <td>
                        <pre>BPL oper</pre>
                    </td>
                    <td>10</td>
                    <td>2</td>
                    <td>2*</td>
                </tr>
            </table>
            <p>* Add 1 if branch occurs to same page. Add 2 if branch occurs to different page.</p>

        </div>
        <div id="BRK" class="opcode">
            <div class="description">
                <h1>BRK</h1>
                <p>Force break</p>
                <p>Operation: Forced interrupt PC+2 &darr; P &darr;</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>1</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>BRK</pre>
                    </td>
                    <td>00</td>
                    <td>1</td>
                    <td>7</td>
                </tr>
            </table>
            <p>A BRK command cannot be masked by setting I.</p>
        </div>
        <div id="BVC" class="opcode">
            <div class="description">
                <h1>BVC</h1>
                <p>Branch on overflow clear</p>
                <p>Operation: Branch on V &equals; &empty;</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Relative</td>
                    <td>
                        <pre>BVC oper</pre>
                    </td>
                    <td>50</td>
                    <td>2</td>
                    <td>2*</td>
                </tr>
            </table>
            <p>* Add 1 if branch occurs to same page. Add 2 if branch occurs to different page.</p>

        </div>
        <div id="BVS" class="opcode">
            <div class="description">
                <h1>BVS</h1>
                <p>Branch on overflow set</p>
                <p>Operation: Branch on V &equals; 1</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Relative</td>
                    <td>
                        <pre>BVS oper</pre>
                    </td>
                    <td>70</td>
                    <td>2</td>
                    <td>2*</td>
                </tr>
            </table>
            <p>* Add 1 if branch occurs to same page. Add 2 if branch occurs to different page.</p>

        </div>
        <div id="CLC" class="opcode">
            <div class="description">
                <h1>CLC</h1>
                <p>Clear carry flag</p>
                <p>Operation:&empty; &rarr; C</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&empty;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>CLC oper</pre>
                    </td>
                    <td>18</td>
                    <td>1</td>
                    <td>2</td>
                </tr>
            </table>

        </div>
        <div id="CLD" class="opcode">
            <div class="description">
                <h1>CLD</h1>
                <p>Clear decimal flag</p>
                <p>Operation:&empty; &rarr; D</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&empty;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>CLD oper</pre>
                    </td>
                    <td>D8</td>
                    <td>1</td>
                    <td>2</td>
                </tr>
            </table>

        </div>
        <div id="CLI" class="opcode">
            <div class="description">
                <h1>CLI</h1>
                <p>Clear interrupt disable flag</p>
                <p>Operation:&empty; &rarr; I</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&empty;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>CLI oper</pre>
                    </td>
                    <td>58</td>
                    <td>1</td>
                    <td>2</td>
                </tr>
            </table>

        </div>
        <div id="CLV" class="opcode">
            <div class="description">
                <h1>CLV</h1>
                <p>Clear overflow flag</p>
                <p>Operation:&empty; &rarr; V</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&empty;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>CLV oper</pre>
                    </td>
                    <td>B8</td>
                    <td>1</td>
                    <td>2</td>
                </tr>
            </table>

        </div>
        <div id="CMP" class="opcode">
            <div class="description">
                <h1>CMP</h1>
                <p>Compare memory and accumulator</p>
                <p>Operation: A - M</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Immediate</td>
                    <td>
                        <pre>CMP #oper</pre>
                    </td>
                    <td>C9</td>
                    <td>2</td>
                    <td>2</td>
                </tr>
                <tr>
                    <td>Zero Page</td>
                    <td>
                        <pre>CMP oper</pre>
                    </td>
                    <td>C5</td>
                    <td>2</td>
                    <td>3</td>
                </tr>
                <tr>
                    <td>Zero Page, X</td>
                    <td>
                        <pre>CMP oper, X</pre>
                    </td>
                    <td>D5</td>
                    <td>2</td>
                    <td>4</td>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>CMP oper</pre>
                    </td>
                    <td>CD</td>
                    <td>3</td>
                    <td>4</td>
                </tr>
                <tr>
                    <td>Absolute, X</td>
                    <td>
                        <pre>CMP oper, X</pre>
                    </td>
                    <td>DD</td>
                    <td>3</td>
                    <td>4*</td>
                </tr>
                <tr>
                    <td>Absolute, Y</td>
                    <td>
                        <pre>CMP oper, Y</pre>
                    </td>
                    <td>D9</td>
                    <td>3</td>
                    <td>4*</td>
                </tr>
                <tr>
                    <td>(Indirect, X)</td>
                    <td>
                        <pre>CMP (oper, X)</pre>
                    </td>
                    <td>C1</td>
                    <td>2</td>
                    <td>6</td>
                </tr>
                <tr>
                    <td>(Indirect), Y</td>
                    <td>
                        <pre>CMP (oper), Y</pre>
                    </td>
                    <td>D1</td>
                    <td>2</td>
                    <td>5*</td>
                </tr>
            </table>
            <p>* Add 1 if page boundary is crossed.</p>

        </div>
        <div id="CPX" class="opcode">
            <div class="description">
                <h1>CPX</h1>
                <p>Compare memory and index X</p>
                <p>Operation: X - M</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Immediate</td>
                    <td>
                        <pre>CPX #oper</pre>
                    </td>
                    <td>E0</td>
                    <td>2</td>
                    <td>2</td>
                </tr>
                <tr>
                    <td>Zero Page</td>
                    <td>
                        <pre>CPX oper</pre>
                    </td>
                    <td>E4</td>
                    <td>2</td>
                    <td>3</td>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>CPX oper</pre>
                    </td>
                    <td>EC</td>
                    <td>3</td>
                    <td>4</td>
                </tr>
            </table>

        </div>
        <div id="CPY" class="opcode">
            <div class="description">
                <h1>CPY</h1>
                <p>Compare memory and index Y</p>
                <p>Operation: Y - M</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Immediate</td>
                    <td>
                        <pre>CPY #oper</pre>
                    </td>
                    <td>C0</td>
                    <td>2</td>
                    <td>2</td>
                </tr>
                <tr>
                    <td>Zero Page</td>
                    <td>
                        <pre>CPY oper</pre>
                    </td>
                    <td>C4</td>
                    <td>2</td>
                    <td>3</td>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>CPY oper</pre>
                    </td>
                    <td>CC</td>
                    <td>3</td>
                    <td>4</td>
                </tr>
            </table>
        </div>
        <div id="DEC" class="opcode">
            <div class="description">
                <h1>DEC</h1>
                <p>Decrement memory by one</p>
                <p>Operation: M - 1 &rarr; M</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Zero Page</td>
                    <td>
                        <pre>DEC oper</pre>
                    </td>
                    <td>C6</td>
                    <td>2</td>
                    <td>5</td>
                </tr>
                <tr>
                    <td>Zero Page, X</td>
                    <td>
                        <pre>DEC oper, X</pre>
                    </td>
                    <td>D6</td>
                    <td>2</td>
                    <td>6</td>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>DEC oper</pre>
                    </td>
                    <td>CE</td>
                    <td>3</td>
                    <td>6</td>
                </tr>
                <tr>
                    <td>Absolute, X</td>
                    <td>
                        <pre>DEC oper, X</pre>
                    </td>
                    <td>DE</td>
                    <td>3</td>
                    <td>7</td>
                </tr>
            </table>
        </div>
        <div id="DEX" class="opcode">
            <div class="description">
                <h1>DEX</h1>
                <p>Decrement X by one</p>
                <p>Operation: X &minus; 1 &rarr; X</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>DEX oper</pre>
                    </td>
                    <td>CA</td>
                    <td>1</td>
                    <td>2</td>
                </tr>
            </table>
        </div>
        <div id="DEY" class="opcode">
            <div class="description">
                <h1>DEY</h1>
                <p>Decrement Y by one</p>
                <p>Operation: Y &minus; 1 &rarr; Y</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>DEY oper</pre>
                    </td>
                    <td>88</td>
                    <td>1</td>
                    <td>2</td>
                </tr>
            </table>
        </div>
        <div id="EOR" class="opcode">
            <div class="description">
                <h1>EOR</h1>
                <p>Exclusive-or memory with accumulator</p>
                <p>Operation: A &#x22BB; M &rarr; A</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Immediate</td>
                    <td>
                        <pre>EOR #oper</pre>
                    </td>
                    <td>49</td>
                    <td>2</td>
                    <td>2</td>
                </tr>
                <tr>
                    <td>Zero Page</td>
                    <td>
                        <pre>EOR oper</pre>
                    </td>
                    <td>45</td>
                    <td>2</td>
                    <td>3</td>
                </tr>
                <tr>
                    <td>Zero Page, X</td>
                    <td>
                        <pre>EOR oper, X</pre>
                    </td>
                    <td>55</td>
                    <td>2</td>
                    <td>4</td>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>EOR oper</pre>
                    </td>
                    <td>4D</td>
                    <td>3</td>
                    <td>4</td>
                </tr>
                <tr>
                    <td>Absolute, X</td>
                    <td>
                        <pre>EOR oper, X</pre>
                    </td>
                    <td>5D</td>
                    <td>3</td>
                    <td>4*</td>
                </tr>
                <tr>
                    <td>Absolute, Y</td>
                    <td>
                        <pre>EOR oper, Y</pre>
                    </td>
                    <td>59</td>
                    <td>3</td>
                    <td>4*</td>
                </tr>
                <tr>
                    <td>(Indirect, X)</td>
                    <td>
                        <pre>EOR (oper, X)</pre>
                    </td>
                    <td>41</td>
                    <td>2</td>
                    <td>6</td>
                </tr>
                <tr>
                    <td>(Indirect), Y</td>
                    <td>
                        <pre>EOR (oper), Y</pre>
                    </td>
                    <td>51</td>
                    <td>2</td>
                    <td>5*</td>
                </tr>
            </table>
            <p>* Add 1 if page boundary is crossed.</p>
        </div>
        <div id="INC" class="opcode">
            <div class="description">
                <h1>INC</h1>
                <p>Increment memory by one</p>
                <p>Operation: M + 1 &rarr; M</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Zero Page</td>
                    <td>
                        <pre>INC oper</pre>
                    </td>
                    <td>E6</td>
                    <td>2</td>
                    <td>5</td>
                </tr>
                <tr>
                    <td>Zero Page, X</td>
                    <td>
                        <pre>INC oper, X</pre>
                    </td>
                    <td>F6</td>
                    <td>2</td>
                    <td>6</td>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>INC oper</pre>
                    </td>
                    <td>EE</td>
                    <td>3</td>
                    <td>6</td>
                </tr>
                <tr>
                    <td>Absolute, X</td>
                    <td>
                        <pre>INC oper, X</pre>
                    </td>
                    <td>FE</td>
                    <td>3</td>
                    <td>7</td>
                </tr>
            </table>
        </div>
        <div id="INX" class="opcode">
            <div class="description">
                <h1>INX</h1>
                <p>Increment X by one</p>
                <p>Operation: X &plus; 1 &rarr; X</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>INX oper</pre>
                    </td>
                    <td>C8</td>
                    <td>1</td>
                    <td>2</td>
                </tr>
            </table>
        </div>
        <div id="INY" class="opcode">
            <div class="description">
                <h1>INY</h1>
                <p>Increment Y by one</p>
                <p>Operation: Y &plus; 1 &rarr; Y</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>INY oper</pre>
                    </td>
                    <td>C8</td>
                    <td>1</td>
                    <td>2</td>
                </tr>
            </table>
        </div>
        <div id="JMP" class="opcode">
            <div class="description">
                <h1>JMP</h1>
                <p>Jump to new location</p>
                <p>Operation: (PC+1) &rarr; PCL, (PC+2) &rarr; PCH</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>JMP oper</pre>
                    </td>
                    <td>4C</td>
                    <td>3</td>
                    <td>3</td>
                </tr>
                <tr>
                    <td>Indirect</td>
                    <td>
                        <pre>JMP (oper)</pre>
                    </td>
                    <td>6C</td>
                    <td>3</td>
                    <td>5</td>
                </tr>
            </table>
        </div>
        <div id="JSR" class="opcode">
            <div class="description">
                <h1>JSR</h1>
                <p>Jump to new location saving return address</p>
                <p>Operation: PC+2 &darr;, (PC+1) &rarr; PCL, (PC+2) &rarr; PCH</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>JSR oper</pre>
                    </td>
                    <td>20</td>
                    <td>3</td>
                    <td>6</td>
                </tr>
            </table>
        </div>
        <div id="LDA" class="opcode">
            <div class="description">
                <h1>LDA</h1>
                <p>Load accumulator with memory</p>
                <p>Operation: M &rarr; A</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Immediate</td>
                    <td>
                        <pre>LDA #oper</pre>
                    </td>
                    <td>A9</td>
                    <td>2</td>
                    <td>2</td>
                </tr>
                <tr>
                    <td>Zero Page</td>
                    <td>
                        <pre>LDA oper</pre>
                    </td>
                    <td>A5</td>
                    <td>2</td>
                    <td>3</td>
                </tr>
                <tr>
                    <td>Zero Page, X</td>
                    <td>
                        <pre>LDA oper, X</pre>
                    </td>
                    <td>B5</td>
                    <td>2</td>
                    <td>4</td>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>LDA oper</pre>
                    </td>
                    <td>AD</td>
                    <td>3</td>
                    <td>4</td>
                </tr>
                <tr>
                    <td>Absolute, X</td>
                    <td>
                        <pre>LDA oper, X</pre>
                    </td>
                    <td>BD</td>
                    <td>3</td>
                    <td>4*</td>
                </tr>
                <tr>
                    <td>Absolute, Y</td>
                    <td>
                        <pre>LDA oper, Y</pre>
                    </td>
                    <td>B9</td>
                    <td>3</td>
                    <td>4*</td>
                </tr>
                <tr>
                    <td>(Indirect, X)</td>
                    <td>
                        <pre>LDA (oper, X)</pre>
                    </td>
                    <td>A1</td>
                    <td>2</td>
                    <td>6</td>
                </tr>
                <tr>
                    <td>(Indirect), Y</td>
                    <td>
                        <pre>LDA (oper), Y</pre>
                    </td>
                    <td>B1</td>
                    <td>2</td>
                    <td>5*</td>
                </tr>
            </table>
            <p>* Add 1 if page boundary is crossed.</p>
        </div>
        <div id="LDX" class="opcode">
            <div class="description">
                <h1>LDX</h1>
                <p>Load index X with memory</p>
                <p>Operation: M &rarr; X</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Immediate</td>
                    <td>
                        <pre>LDX #oper</pre>
                    </td>
                    <td>A2</td>
                    <td>2</td>
                    <td>2</td>
                </tr>
                <tr>
                    <td>Zero Page</td>
                    <td>
                        <pre>LDX oper</pre>
                    </td>
                    <td>A6</td>
                    <td>2</td>
                    <td>3</td>
                </tr>
                <tr>
                    <td>Zero Page, Y</td>
                    <td>
                        <pre>LDX oper, Y</pre>
                    </td>
                    <td>B6</td>
                    <td>2</td>
                    <td>4</td>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>LDX oper</pre>
                    </td>
                    <td>AE</td>
                    <td>3</td>
                    <td>4</td>
                </tr>
                <tr>
                    <td>Absolute, Y</td>
                    <td>
                        <pre>LDX oper, Y</pre>
                    </td>
                    <td>BE</td>
                    <td>3</td>
                    <td>4*</td>
                </tr>
            </table>
            <p>* Add 1 if page boundary is crossed.</p>
        </div>
        <div id="LDY" class="opcode">
            <div class="description">
                <h1>LDY</h1>
                <p>Load index Y with memory</p>
                <p>Operation: M &rarr; Y</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Immediate</td>
                    <td>
                        <pre>LDY #oper</pre>
                    </td>
                    <td>A0</td>
                    <td>2</td>
                    <td>2</td>
                </tr>
                <tr>
                    <td>Zero Page</td>
                    <td>
                        <pre>LDY oper</pre>
                    </td>
                    <td>A4</td>
                    <td>2</td>
                    <td>3</td>
                </tr>
                <tr>
                    <td>Zero Page, X</td>
                    <td>
                        <pre>LDY oper, X</pre>
                    </td>
                    <td>B4</td>
                    <td>2</td>
                    <td>4</td>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>LDY oper</pre>
                    </td>
                    <td>AC</td>
                    <td>3</td>
                    <td>4</td>
                </tr>
                <tr>
                    <td>Absolute, X</td>
                    <td>
                        <pre>LDY oper, X</pre>
                    </td>
                    <td>BC</td>
                    <td>3</td>
                    <td>4*</td>
                </tr>
            </table>
            <p>* Add 1 if page boundary is crossed.</p>
        </div>
        <div id="LSR" class="opcode">
            <div class="description">
                <h1>LSR</h1>
                <p>Shift right one bit (memory or accumulator)</p>
                <p>Operation: &empty; &rarr; 76543210 &rarr; C</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&empty;</td>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Accumulator</td>
                    <td>
                        <pre>LSR A</pre>
                    </td>
                    <td>4A</td>
                    <td>1</td>
                    <td>2</td>
                </tr>
                <tr>
                    <td>Zero Page</td>
                    <td>
                        <pre>LSR oper</pre>
                    </td>
                    <td>46</td>
                    <td>2</td>
                    <td>5</td>
                </tr>
                <tr>
                    <td>Zero Page, X</td>
                    <td>
                        <pre>LSR oper, X</pre>
                    </td>
                    <td>56</td>
                    <td>2</td>
                    <td>6</td>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>LSR oper</pre>
                    </td>
                    <td>4E</td>
                    <td>3</td>
                    <td>6</td>
                </tr>
                <tr>
                    <td>Absolute, X</td>
                    <td>
                        <pre>LSR oper, X</pre>
                    </td>
                    <td>5E</td>
                    <td>3</td>
                    <td>7</td>
                </tr>
            </table>
        </div>
        <div id="NOP" class="opcode">
            <div class="description">
                <h1>NOP</h1>
                <p>No operation</p>
                <p>Operation: no operation (2 cycles)</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>NOP</pre>
                    </td>
                    <td>EA</td>
                    <td>1</td>
                    <td>2</td>
                </tr>
            </table>
        </div>
        <div id="ORA" class="opcode">
            <div class="description">
                <h1>ORA</h1>
                <p>"OR" memory with accumulator</p>
                <p>Operation: A &or; M &rarr; A</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Immediate</td>
                    <td>
                        <pre>ORA #oper</pre>
                    </td>
                    <td>09</td>
                    <td>2</td>
                    <td>2</td>
                </tr>
                <tr>
                    <td>Zero Page</td>
                    <td>
                        <pre>ORA oper</pre>
                    </td>
                    <td>05</td>
                    <td>2</td>
                    <td>3</td>
                </tr>
                <tr>
                    <td>Zero Page, X</td>
                    <td>
                        <pre>ORA oper, X</pre>
                    </td>
                    <td>15</td>
                    <td>2</td>
                    <td>4</td>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>ORA oper</pre>
                    </td>
                    <td>0D</td>
                    <td>3</td>
                    <td>4</td>
                </tr>
                <tr>
                    <td>Absolute, X</td>
                    <td>
                        <pre>ORA oper, X</pre>
                    </td>
                    <td>1D</td>
                    <td>3</td>
                    <td>4*</td>
                </tr>
                <tr>
                    <td>Absolute, Y</td>
                    <td>
                        <pre>ORA oper, Y</pre>
                    </td>
                    <td>19</td>
                    <td>3</td>
                    <td>4*</td>
                </tr>
                <tr>
                    <td>(Indirect, X)</td>
                    <td>
                        <pre>ORA (oper, X)</pre>
                    </td>
                    <td>01</td>
                    <td>2</td>
                    <td>6</td>
                </tr>
                <tr>
                    <td>(Indirect), Y</td>
                    <td>
                        <pre>ORA (oper), Y</pre>
                    </td>
                    <td>11</td>
                    <td>2</td>
                    <td>5</td>
                </tr>
            </table>
            <p>* Add 1 if page boundary is crossed.</p>
        </div>
        <div id="PHA" class="opcode">
            <div class="description">
                <h1>PHA</h1>
                <p>Push accumulator on stack</p>
                <p>Operation: A &darr;</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>PHA</pre>
                    </td>
                    <td>48</td>
                    <td>1</td>
                    <td>3</td>
                </tr>
            </table>
        </div>
        <div id="PHP" class="opcode">
            <div class="description">
                <h1>PHP</h1>
                <p>Push processor status on stack</p>
                <p>Operation: P &darr;</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>PHP</pre>
                    </td>
                    <td>08</td>
                    <td>1</td>
                    <td>3</td>
                </tr>
            </table>
        </div>
        <div id="PLA" class="opcode">
            <div class="description">
                <h1>PLA</h1>
                <p>Pull accumulator from stack</p>
                <p>Operation: A &uarr;</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>PLA</pre>
                    </td>
                    <td>68</td>
                    <td>1</td>
                    <td>4</td>
                </tr>
            </table>
        </div>
        <div id="PLP" class="opcode">
            <div class="description">
                <h1>PLP</h1>
                <p>Pull processor status from stack</p>
                <p>Operation: P &uarr;</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td colspan="6">(from stack)</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>PLP</pre>
                    </td>
                    <td>28</td>
                    <td>1</td>
                    <td>4</td>
                </tr>
            </table>
        </div>
        <div id="ROL" class="opcode">
            <div class="description">
                <h1>ROL</h1>
                <p>Rotate one bit left (memory or accumulator)</p>
                <p>Operation: &larr; 76543210 &larr; C &larr;</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Accumulator</td>
                    <td>
                        <pre>ROL A</pre>
                    </td>
                    <td>2A</td>
                    <td>1</td>
                    <td>2</td>
                </tr>
                <tr>
                    <td>Zero Page</td>
                    <td>
                        <pre>ROL oper</pre>
                    </td>
                    <td>26</td>
                    <td>2</td>
                    <td>5</td>
                </tr>
                <tr>
                    <td>Zero Page, X</td>
                    <td>
                        <pre>ROL oper, X</pre>
                    </td>
                    <td>36</td>
                    <td>2</td>
                    <td>6</td>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>ROL oper</pre>
                    </td>
                    <td>2E</td>
                    <td>3</td>
                    <td>6</td>
                </tr>
                <tr>
                    <td>Absolute, X</td>
                    <td>
                        <pre>ROL oper, X</pre>
                    </td>
                    <td>3E</td>
                    <td>3</td>
                    <td>7</td>
                </tr>
            </table>
        </div>
        <div id="ROR" class="opcode">
            <div class="description">
                <h1>ROR</h1>
                <p>Rotate one bit right (memory or accumulator</p>
                <p>Operation: &rarr; 76543210 &rarr; C &rarr;</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Accumulator</td>
                    <td>
                        <pre>ROR A</pre>
                    </td>
                    <td>6A</td>
                    <td>1</td>
                    <td>2</td>
                </tr>
                <tr>
                    <td>Zero Page</td>
                    <td>
                        <pre>ROR oper</pre>
                    </td>
                    <td>66</td>
                    <td>2</td>
                    <td>5</td>
                </tr>
                <tr>
                    <td>Zero Page, X</td>
                    <td>
                        <pre>ROR oper, X</pre>
                    </td>
                    <td>76</td>
                    <td>2</td>
                    <td>6</td>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>ROR oper</pre>
                    </td>
                    <td>6E</td>
                    <td>3</td>
                    <td>6</td>
                </tr>
                <tr>
                    <td>Absolute, X</td>
                    <td>
                        <pre>ROR oper, X</pre>
                    </td>
                    <td>7E</td>
                    <td>3</td>
                    <td>7</td>
                </tr>
            </table>
            <p>The earliest MCS650X microprocessors featured a broken ROR instruction, which was fixed by June 1976.</p>
        </div>
        <div id="RTI" class="opcode">
            <div class="description">
                <h1>RTI</h1>
                <p>Return from interrupt</p>
                <p>Operation: P &uarr;, PC &uarr;</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td colspan="6">(from stack)</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>RTI</pre>
                    </td>
                    <td>40</td>
                    <td>1</td>
                    <td>6</td>
                </tr>
            </table>
        </div>
        <div id="RTS" class="opcode">
            <div class="description">
                <h1>RTS</h1>
                <p>Return from subroutine</p>
                <p>Operation: PC &uarr;, PC+1 &rarr; PC</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>RTS</pre>
                    </td>
                    <td>60</td>
                    <td>1</td>
                    <td>6</td>
                </tr>
            </table>
        </div>
        <div id="SBC" class="opcode">
            <div class="description">
                <h1>SBC</h1>
                <p>Subtract memory from accumulator with borrow</p>
                <p>Operation: A - M - !C &rarr A</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&check;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Immediate</td>
                    <td>
                        <pre>SBC #oper</pre>
                    </td>
                    <td>E9</td>
                    <td>2</td>
                    <td>2</td>
                </tr>
                <tr>
                    <td>Zero Page</td>
                    <td>
                        <pre>SBC oper</pre>
                    </td>
                    <td>E5</td>
                    <td>2</td>
                    <td>3</td>
                </tr>
                <tr>
                    <td>Zero Page, X</td>
                    <td>
                        <pre>SBC oper, X</pre>
                    </td>
                    <td>F5</td>
                    <td>2</td>
                    <td>4</td>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>SBC oper</pre>
                    </td>
                    <td>ED</td>
                    <td>3</td>
                    <td>4</td>
                </tr>
                <tr>
                    <td>Absolute, X</td>
                    <td>
                        <pre>SBC oper, X</pre>
                    </td>
                    <td>FD</td>
                    <td>3</td>
                    <td>4*</td>
                </tr>
                <tr>
                    <td>Absolute, Y</td>
                    <td>
                        <pre>SBC oper, Y</pre>
                    </td>
                    <td>F9</td>
                    <td>3</td>
                    <td>4*</td>
                </tr>
                <tr>
                    <td>(Indirect, X)</td>
                    <td>
                        <pre>SBC (oper, X)</pre>
                    </td>
                    <td>E1</td>
                    <td>2</td>
                    <td>6</td>
                </tr>
                <tr>
                    <td>(Indirect), Y</td>
                    <td>
                        <pre>SBC (oper), Y</pre>
                    </td>
                    <td>F1</td>
                    <td>2</td>
                    <td>5*</td>
                </tr>
            </table>
            <p>* Add 1 if page boundary is crossed.</p>
        </div>
        <div id="SEC" class="opcode">
            <div class="description">
                <h1>SEC</h1>
                <p>Set carry flag</p>
                <p>Operation: 1 &rarr; C</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>1</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>SEC</pre>
                    </td>
                    <td>38</td>
                    <td>1</td>
                    <td>2</td>
                </tr>
            </table>
        </div>
        <div id="SED" class="opcode">
            <div class="description">
                <h1>SED</h1>
                <p>Set decimal mode</p>
                <p>Operation: 1 &rarr; D</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>1</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>SED</pre>
                    </td>
                    <td>F8</td>
                    <td>1</td>
                    <td>2</td>
                </tr>
            </table>
        </div>
        <div id="SEI" class="opcode">
            <div class="description">
                <h1>SEI</h1>
                <p>Set interrupt disable status</p>
                <p>Operation: 1 &rarr; I</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>1</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>SEI</pre>
                    </td>
                    <td>78</td>
                    <td>1</td>
                    <td>2</td>
                </tr>
            </table>
        </div>
        <div id="STA" class="opcode">
            <div class="description">
                <h1>STA</h1>
                <p>Store accumulator in memory</p>
                <p>Operation: A &rarr; M</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Zero Page</td>
                    <td>
                        <pre>STA oper</pre>
                    </td>
                    <td>85</td>
                    <td>2</td>
                    <td>3</td>
                </tr>
                <tr>
                    <td>Zero Page, X</td>
                    <td>
                        <pre>STA oper, X</pre>
                    </td>
                    <td>95</td>
                    <td>2</td>
                    <td>4</td>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>STA oper</pre>
                    </td>
                    <td>8D</td>
                    <td>3</td>
                    <td>4</td>
                </tr>
                <tr>
                    <td>Absolute, X</td>
                    <td>
                        <pre>STA oper, X</pre>
                    </td>
                    <td>9D</td>
                    <td>3</td>
                    <td>5</td>
                </tr>
                <tr>
                    <td>Absolute, Y</td>
                    <td>
                        <pre>STA oper, Y</pre>
                    </td>
                    <td>99</td>
                    <td>3</td>
                    <td>5</td>
                </tr>
                <tr>
                    <td>(Indirect, X)</td>
                    <td>
                        <pre>STA (oper, X)</pre>
                    </td>
                    <td>81</td>
                    <td>2</td>
                    <td>6</td>
                </tr>
                <tr>
                    <td>(Indirect), Y</td>
                    <td>
                        <pre>STA (oper), Y</pre>
                    </td>
                    <td>91</td>
                    <td>2</td>
                    <td>6</td>
                </tr>
            </table>
        </div>
        <div id="STX" class="opcode">
            <div class="description">
                <h1>STX</h1>
                <p>Store index X in memory</p>
                <p>Operation: X &rarr; M</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Zero Page</td>
                    <td>
                        <pre>STX oper</pre>
                    </td>
                    <td>86</td>
                    <td>2</td>
                    <td>3</td>
                </tr>
                <tr>
                    <td>Zero Page, Y</td>
                    <td>
                        <pre>STX oper, Y</pre>
                    </td>
                    <td>96</td>
                    <td>2</td>
                    <td>4</td>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>STX oper</pre>
                    </td>
                    <td>8E</td>
                    <td>3</td>
                    <td>4</td>
                </tr>
            </table>
        </div>
        <div id="STY" class="opcode">
            <div class="description">
                <h1>STY</h1>
                <p>Store index Y in memory</p>
                <p>Operation: Y &rarr; M</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Zero Page</td>
                    <td>
                        <pre>STX oper</pre>
                    </td>
                    <td>84</td>
                    <td>2</td>
                    <td>3</td>
                </tr>
                <tr>
                    <td>Zero Page, X</td>
                    <td>
                        <pre>STX oper, X</pre>
                    </td>
                    <td>94</td>
                    <td>2</td>
                    <td>4</td>
                </tr>
                <tr>
                    <td>Absolute</td>
                    <td>
                        <pre>STX oper</pre>
                    </td>
                    <td>8C</td>
                    <td>3</td>
                    <td>4</td>
                </tr>
            </table>
        </div>
        <div id="TAX" class="opcode">
            <div class="description">
                <h1>TAX</h1>
                <p>Transfer accumulator to index X</p>
                <p>Operation: A &rarr; X</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>TAX</pre>
                    </td>
                    <td>AA</td>
                    <td>1</td>
                    <td>2</td>
                </tr>
            </table>
        </div>
        <div id="TAY" class="opcode">
            <div class="description">
                <h1>TAY</h1>
                <p>Transfer accumulator to index Y</p>
                <p>Operation: A &rarr; Y</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>TAY</pre>
                    </td>
                    <td>A8</td>
                    <td>1</td>
                    <td>2</td>
                </tr>
            </table>
        </div>
        <div id="TSX" class="opcode">
            <div class="description">
                <h1>TSX</h1>
                <p>Transfer stack pointer to index X</p>
                <p>Operation: S &rarr; X</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>TSX</pre>
                    </td>
                    <td>BA</td>
                    <td>1</td>
                    <td>2</td>
                </tr>
            </table>
        </div>
        <div id="TXA" class="opcode">
            <div class="description">
                <h1>TXA</h1>
                <p>Transfer index X to accumulator</p>
                <p>Operation: X &rarr; A</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>TXA</pre>
                    </td>
                    <td>8A</td>
                    <td>1</td>
                    <td>2</td>
                </tr>
            </table>
        </div>
        <div id="TXS" class="opcode">
            <div class="description">
                <h1>TXS</h1>
                <p>Transfer index X to stack pointer</p>
                <p>Operation: X &rarr; S</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>TXS</pre>
                    </td>
                    <td>9A</td>
                    <td>1</td>
                    <td>2</td>
                </tr>
            </table>
        </div>
        <div id="TYA" class="opcode">
            <div class="description">
                <h1>TYA</h1>
                <p>Transfer index Y to accumulator</p>
                <p>Operation: Y &rarr; A</p>
            </div>
            <table class="flags">
                <tr>
                    <th>N</th>
                    <th>Z</th>
                    <th>C</th>
                    <th>I</th>
                    <th>D</th>
                    <th>V</th>
                </tr>
                <tr>
                    <td>&check;</td>
                    <td>&check;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                    <td>&ndash;</td>
                </tr>
            </table>
            <table class="modes">
                <tr>
                    <th>Addressing<br>
                        Mode</th>
                    <th>Assembly
                        <br>
                        Language
                        Form</th>
                    <th>Opcode</th>
                    <th># of<br>
                        Bytes</th>
                    <th># of<br>
                        Cycles</th>
                </tr>
                <tr>
                    <td>Implied</td>
                    <td>
                        <pre>TYA</pre>
                    </td>
                    <td>98</td>
                    <td>1</td>
                    <td>2</td>
                </tr>
            </table>
        </div>
        <div style="height: 100%"></div>
    </div>
</body>
</html>
